ttmouse/dsh-taskboard: DSH Local-First Taskboard Plugin

ttmouse/dsh-taskboard is a local-first task board plugin for DeepSeek Harness (DSH), with data fully stored in a local SQLite database and no dependency on external cloud services. Derived from chuspeeism/dashi-taskboard, its core features include support for five view types: Kanban, List, Gantt, Workflow, and Dashboard; task details cover related items, attachments, tags, and per-task AI chat; it supports automatically claiming the oldest todo task in a mapped project within the workspace, executing via dsh-routines in a headless session, and writing progress back as comments. The plugin implements automatic synchronization between DSH workspaces and board projects, and can...

Read More
Django ORM Practical Guide: CRUD Operations with SQLite Database

This article introduces the operation methods of Django framework combined with SQLite database, focusing on the use of ORM tools. Django ORM allows database operations through Python code, avoiding the need to write complex SQL statements. SQLite is lightweight and easy to use, making it suitable for development and learning. Preparatory work includes: creating a new Django project (`startproject`/`startapp`), configuring SQLite by default in `settings.py`, defining models (such as a `User` class), and executing `makemigrations` and `migrate` to generate database tables. The core is the CRUD operations of Django ORM: **Creation** can be done via `create()` or instantiation followed by `save()`; **Reading** uses `all()`, `filter()`, `get()` (supporting conditions and sorting); **Updating** uses `update()` for batch operations or querying first then modifying; **Deletion** uses `delete()` for batch operations or querying first then deleting. It is important to note the lazy execution of QuerySet, using `unique=True` to prevent duplicates, and exception handling for `get()`. Summary: By defining models, migrating table structures, and calling ORM methods, database operations can be completed. The code is concise and easy to maintain, making it suitable for quickly getting started with web development.

Read More